/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package sys.teste;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintStream;
import java.io.PrintWriter;
import java.util.Scanner;
import javax.swing.JOptionPane;

/**
 *
 * @author Administrador
 */
public class TesteImpressao {
    
    public static void main(String[] args) {
        TesteImpressao a = new TesteImpressao();
        a.criaTxt();
    }
    

    // by: Fernando Paiva
// cria txt
    public void criaTxt() {
        try {
            File arquivo = new File("C:/comanda.txt");
            if (arquivo.exists()) {
                //se existir
                FileWriter arquivoTxt = new FileWriter(arquivo, true);
                PrintWriter linhasTxt = new PrintWriter(arquivoTxt);

                linhasTxt.println("===========================================");
                linhasTxt.println("              Nome da empresa              ");
                linhasTxt.println("===========================================");
                linhasTxt.println("********** NAO E DOCUMENTO FISCAL *********");
                linhasTxt.println("===========================================");
                linhasTxt.println("PRODUTO      QTDE      VALOR UN.      VALOR");
                //dados da tabela
                for (int x = 0; x <1; x++) {
                    linhasTxt.print(String.format("%-10.10s", "CIMENTO CAUE"));
                    linhasTxt.print(String.format("%7s     ", "10"));
                    linhasTxt.print(String.format("%10s    ", "21.81"));
                    linhasTxt.print(String.format("%7s    ", "218.10"));
                    linhasTxt.println();
                }
                linhasTxt.println("===========================================");
                linhasTxt.println("   INFORMACOES PARA FECHAMENTO DE CONTA    ");
                linhasTxt.println("===========================================");
                linhasTxt.println(" GARCOM  CONTA.DIV.  VAL.PESS. COVER  DESC.");
                linhasTxt.print(String.format("%7s  %9s  %9s  %5s   %s",
                        "JOSE",
                        "1",
                        "218.10",
                        "5",
                        "218.10"
                ));
                linhasTxt.println();
                linhasTxt.println("===========================================");
                linhasTxt.println("SubTotal                            " + "100");
                linhasTxt.println("                   ------------------------");
                linhasTxt.println("Total                                " + "50");
                linhasTxt.println("===========================================");
                linhasTxt.println("       MENSAGEM DA EMPRESA VAI AQUI        ");
                linhasTxt.println("   INFORMACOES PARA FECHAMENTO DE CONTA    ");

                int i = 0;
                while (i < 10) {
                    i++;
                    linhasTxt.println();
                }
                arquivoTxt.close();
                emiteComanda();

            } else {
                //se naum existir
                arquivo.createNewFile();
                criaTxt();
            }
        } catch (IOException error) {
            error.printStackTrace();
            System.out.println("nao encontrei arquivo");
        }

    }

//imprime txt
    public void emiteComanda() {
        try {
            java.io.InputStream is = new FileInputStream("/Iguana/comprovantes/comanda.txt");
            Scanner sc = new Scanner(is);
            FileOutputStream fs = new FileOutputStream("LPT1:");
            PrintStream ps = new PrintStream(fs);

            while (sc.hasNextLine()) {
                String linhas = sc.nextLine();
                ps.println(linhas);
            }
            fs.close();
        } catch (IOException ex) {
            JOptionPane.showMessageDialog(null, "Erro encontrado ao imprimir comanda.");
        }
    }

}
